The past decades have seen a continuous stream of new offerings to the public in the field of communication and entertainment. The development of the Video Cassette Recorder (VCR) has enabled consumers to go to video cassette outlets, rent tapes of movies. Once brought to the consumer's home, the consumer could play the movie at a time of its own choosing. Features of the VCR allowed the consumer to stop the movie at a specific point, rewind and replay all or part of the movie, and fast forward past sections of the movie that held little interest to the viewer.
At the same time, the availability of Cable TV allowed consumers access to a relatively wide selection of movies over a number of channels. The Cable TV system had the advantage that the consumer did not need to go to an outlet to obtain a tape. However, since Cable TV is a broadcast facility, the consumer only had access over his cable hookup to those movies being broadcast. That is, the movies from which he could select were dictated by the number of channels to which he had access and the particular selection of movies chosen by those channels. Further, he could only watch a specific movie at the time it was broadcast. That is, the time a movie could be viewed was dictated by the Cable TV channel schedule. In addition, the consumer was a passive participant, having no ability to stop, rewind or fast-forward the movie.
While these developments were occurring in the entertainment industry, equally revolutionary changes were occurring in the corporate sector. Business has long been familiar with the monomedia communications in which multiple users used servers to provide them functions. For example, a host or server computer which provides access to different applications to different users simultaneously can now be found in almost every enterprise. Similarly, a phone system which allows multiple users separate communications with other users is well known. As technology improved (and high speed networks that could handle 100MB/second transmissions developed), business began to experiment with multimedia communications which integrated different types of data. A generic example of such multimedia communications would be a video-conference between several people at different locations, where graphics or data was simultaneously displayed on terminals.
Most recently, the entertainment industry and the corporate sector has begun to merge the functions they provide to their users. Thus, development has begun on devices that could transmit individual streams of multimedia data to users under the users control. An example of this type of function would be a multimedia server which is capable of sending out multiple streams of data where each stream could be a training film, a movie for entertainment, images from a computer, teleconferences between users, screens from application programs, or other data.
Even in those cases where the multimedia streams consist primarily of fixed data (such as a movie transmission), there is a need to provide for some interaction with the user--to allow him, as he can do with his VCR, to stop the transmission, rewind and replay the transmission, or fast forward to another section. Thus, the multimedia servers envisions must not only have the capability of providing different data streams to different clients (or groups of clients), the network must be able to respond to requests for changes in the data streams. Of particular concern is the case in which a user leaves the network. One option would be to allow the channel allocated to the user to remain unused. This approach would be inefficient as well as requiring extremely wide bandwidth to be accessible in situations in which a number of users are attached to a single server.